# Contributor: August Klein <amatcoder@gmail.com>
# Maintainer: August Klein <amatcoder@gmail.com>

# RESTRICTED: Any upgrade to this package must be tested against ALL architectures
# supported by Alpine. It is not allowed to mask this package on ANY architecture.
# At present, upgrade is not allowed because rustc is not yet available on ALL
# supported architectures. Any upgrade which masks an architecture WILL be reverted.

pkgname=py3-cryptography
_pyname=cryptography
pkgver=3.4.8
pkgrel=1
pkgdesc="Cryptographic recipes and primitives for Python"
url="https://cryptography.io/"
arch="all"
license="Apache-2.0 OR BSD-3-Clause"
depends="python3 py3-cffi py3-idna py3-six"
makedepends="python3-dev py3-setuptools libffi-dev openssl1.1-compat-dev"
checkdepends="py3-pytest py3-pytest-subtests py3-hypothesis py3-tz py3-pretend py3-iso8601"
source="https://files.pythonhosted.org/packages/source/c/cryptography/cryptography-$pkgver.tar.gz
	https://files.pythonhosted.org/packages/source/c/cryptography_vectors/cryptography_vectors-$pkgver.tar.gz
	no-rust.patch"
builddir="$srcdir/$_pyname-$pkgver"

replaces="py-cryptography" # Backwards compatibility
provides="py-cryptography=$pkgver-r$pkgrel" # Backwards compatibility

# secfixes:
#   3.2.2-r0:
#     - CVE-2020-36242
#   3.2.1-r0:
#     - CVE-2020-25659

build() {
	python3 setup.py build

	# prepare cryptography vectors for testing
	cd "$srcdir/cryptography_vectors-$pkgver"
	python3 setup.py build
}

check() {
	PYTHONPATH="$(echo $PWD/build/lib.linux-*):$srcdir/cryptography_vectors-$pkgver/build/lib" pytest
}

package() {
	python3 setup.py install --prefix=/usr --root="$pkgdir" --skip-build
}

sha512sums="
b0d64a573b488af3e453fc1885bbafb65f8a2260e81cf64830f981589afca0bd7be052a5f5b8ed83dd78d9638da37c680f3705cbf2d47d5b28fb5a5454f1cea5  cryptography-3.4.8.tar.gz
de668cc0599862f32993022dead7fd682cd6b9a458d00a71c810a2904bc6d5482b8f5544b174b9e34a3f13a126b7c957942d0159a13c0a0676e702cf87c49071  cryptography_vectors-3.4.8.tar.gz
23eb7ec9e9804ed08d2a2942a60b91f07d12bd36c699afd4f0ae0ab5c795a1b55827c50631850ebdf126b1752ed1ab41ac3da85fa49a080d4c27b4caa2134619  no-rust.patch
"
